const http = require("http");
const path = require("path");
const { fork } = require("child_process");
const server = http.createServer();

server.on("request", (req, res) => {
  if (req.url === "/compute") {
    // 读取compute.js文件，创建子进程
    const compute = fork(path.resolve(__dirname, "compute.js"));
    // send方法，可以把信息发生给子进程文件
    // 使用child_process的fork，可以使父进程和子进程之间建立IPC通道，可以使用
    // send方法向子进程发送消息 【send 发送】【on 接收】
    compute.send(" start send to compute js");
    compute.on("message", (sum) => {
      res.end(`Sum is ${sum}`);
    });
  } else {
    res.end("OK");
  }
});
server.listen(3123);
